/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package symulacja;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JButton;
import javax.swing.JPanel;

/**
 *
 * @author admin
 */
class Rysowanie extends JPanel
{
    
    public Rysowanie()
    {
        super();
        this.setBackground(Color.WHITE);
    }
    
    
    public  void aktualizuj()
    {
        this.paint(this.getGraphics());     
    }   
    
    public double wyliczPrad(double r, double l, double c,double v)
    {
        double i=0;
        double z=0;
        z=Math.sqrt( r*r+(l-c)*(l-c) );
        Symulacja.impe=z;
        System.out.println("Impedancja wynosi z= "+z);
        i=v/z;
        Symulacja.nate=i;
        Symulacja.impedancja.setText("Z=sqrt(R^2+(L-C)^2)="+Symulacja.impe+" Ohm");
        Symulacja.prad.setText("I=|V|/|Z|="+Symulacja.nate+" A");
        
        
        return i;
    }
    
    public void wyczysc()
    {
        this.removeAll();    
        repaint();
    }
    
    public void paintComponent(Graphics g)
    {
         Graphics2D g2=(Graphics2D)g;
        int szer=200;
        int x=50;
        int y=50;
        super.paintComponent(g);
        
        
       
        
        
        //przed wlaczeniem
        if(!flaga)
        {
          //  this.removeAll();
            this.removeAll();  
           
            Symulacja.rysowanie.flaga=flaga;
            g.setColor(Color.black);
            //LEWA GAŁĄŹ
            //strzalka 
           
            g.drawLine(100, 240, 100, 210);
            g.drawLine(100, 210, 105, 220);
            g.drawLine(100, 210, 95, 220);
            
            g.drawLine(100, 350, 100, 250);//DOLNA LINIA
            g.drawOval(75, 200, 50, 50); //zrodlo napiecia
            g.drawString("V="+nap, 45, 230);
            g.drawLine(100, 200, 100, 100);//GORNA linia
            
            //Gorna gałąź
            
             g.drawLine(100, 100, 140, 100);
//             g.drawLine(150, 100, 180, 70);//wylacznik
             g.drawLine(200, 100, 300, 100);//na prawo do wlacznika
             g.drawRect(300, 90, 50, 20);
             g.drawString("R="+rez, 310, 88);
             g.drawLine(350, 100, 400, 100);//galaz za rezystorem
       
             
             
             //Boczna gałąź prawa
             g.drawLine(400, 100, 400, 150);
             g.drawLine(400, 150, 415, 157);//cewka
             g.drawLine(415, 157, 390, 167);
             g.drawLine(390, 167, 410, 177);
             g.drawString("L="+ind, 415, 180);
             g.drawLine(410, 177, 390, 187);
             g.drawLine(390, 187, 410, 197);
             g.drawLine(410, 197, 400, 202);//koniec cewki
             g.drawLine(400, 202, 400, 272);
             g.drawLine(380, 272, 420, 272);//kondensator
             g.drawString("C="+cap, 423, 285);
             g.drawLine(380, 287, 420, 287);//koniec kondensatora
             g.drawLine(400, 287, 400, 350);
             
             
             //dolna linia
             g.drawLine(400, 350, 100, 350);
             Wykres wykres=new Wykres("");
             Wylacznik wyl=new Wylacznik();
             this.add(wyl);
             this.add(wykres);
        }     
        
        //Po starcie PO ZAŁĄCZNIU
        if(flaga)
        {   
            this.removeAll();
            
            Wylacznik.flaga=flaga;
            System.out.println("if(flaga)   "+Wylacznik.flaga);
      //      this.removeAll();
          
            //LEWA GAŁĄŹ
            //strzalka 
            g.setColor(Color.black);
            
            g.drawLine(100, 240, 100, 210);
            g.drawLine(100, 210, 105, 220);
            g.drawLine(100, 210, 95, 220);
            g.setColor(Color.GREEN);
            g.drawLine(100, 350, 100, 250);//DOLNA LINIA
            g.setColor(Color.black);
            g.drawOval(75, 200, 50, 50); //zrodlo napiecia
            g.drawString("V="+nap, 45, 230);
            g.setColor(Color.GREEN);
            g.drawLine(100, 170, 105, 180);//strzalka I
            g.drawString("I="+nat, 250, 365);
            g.drawLine(100, 170, 95, 180);//strzalka I
            g.drawLine(100, 200, 100, 100);//GORNA linia
            
            //Gorna gałąź
             g.drawLine(100, 100, 140, 100);
             //             g.drawLine(150, 100, 180, 70);//wylacznik
             g.drawLine(200, 100, 300, 100);//na prawo do wlacznika      
             //150, 100, 180, 70
             g.drawLine(210, 95, 220, 100);//strzalka I
             g.drawString("I="+nat, 210, 92);
             g.drawLine(210, 105, 220, 100);//strzalka I
             g.drawLine(190, 100, 300, 100);//na prawo do wlacznika
             g.setColor(Color.black);
             g.drawRect(300, 90, 50, 20);
             g.drawString("R="+rez, 310, 88);
             g.setColor(Color.GREEN);
             g.drawLine(350, 100, 400, 100);//galaz za rezystorem
       
             
             
             //Boczna gałąź prawa
             g.setColor(Color.GREEN);
             g.drawLine(400, 100, 400, 150);
             g.setColor(Color.black);
             g.drawLine(400, 150, 415, 157);//cewka
             g.drawLine(415, 157, 390, 167);
             g.drawLine(390, 167, 410, 177);
            
             g.drawString("L="+ind, 415, 180);
             g.drawLine(410, 177, 390, 187);
             g.drawLine(390, 187, 410, 197);
             g.drawLine(410, 197, 400, 202);//koniec cewki
             g.setColor(Color.GREEN);
             g.drawLine(400, 232, 395, 222);//strzalka I
             
             g.drawLine(400, 232, 405, 222);//strzalka I
             
             g.drawLine(400, 202, 400, 265);
             g.setColor(Color.black);
//             g.drawLine(380, 272, 420, 272);//kondensator
//             g.setColor(Color.black);
            g.drawString("C="+cap, 423, 285);
//             g.drawLine(380, 287, 420, 287);//koniec kondensatora
             g.setColor(Color.GREEN);
             g.drawLine(400, 292, 400, 350);
             
             
             //dolna gałąź
             g.drawLine(400, 350, 100, 350);
             g.drawLine(250, 350, 260, 345);//strzalka I
             g.drawString("I=", 250, 365);
             g.drawLine(250, 350, 260, 355);//strzalka I
             
             Kondensator kon=new Kondensator();
             Wykres wykres=new Wykres("");
             Wylacznik wyl=new Wylacznik();
             this.add(wyl);
             this.add(wykres);
             this.add(kon);
             
        }
        
    }
    
    //zmienne do Paint Component Rysowabua
    public static String rez="";
    public static String ind="";
    public static String cap="";
    public static String nap="";
    public static double nat;
  
   

    
    
  
    
    
    
    
     public static Color kolorObwodu=Color.GREEN;
     public static boolean flaga=false;
     
     
}//koniec klasy Rysowanie